package com.cfpamf.athean.rabbit.mq.plus.domain;

import java.io.Serializable;
import java.util.Date;

import lombok.Builder;
import lombok.Data;

@Builder
@Data
public class RabbitMqRetryInfo implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = 6854635961444210757L;

    private String messageId;
    /**
     * 首次消息时间
     */
    private Date firstMessageTime;

    /**
     * 最后消息时间
     */
    private Date lastMessageTime;
    /**
     * 消息时间
     */
    private Date messageTime;
    /**
     * 重试次数
     */
    private int retryNumber;
    /**
     * 重试时长（单位分钟）
     */
    private int retryDurationByMinute;
    /**
     * 下次执行时间（延迟到的时间）
     */
    private Date nextRetryTime;
    /**
     * 延迟执行毫秒
     */
    private int delayRetryMillisecond;

    /**
     * 最后一次重试状态
     */
    private boolean lastDelayRetryStatus;

    /**
     * 消息内容体
     */
    private String body;

}
